package com.sy.service.permissions;

import com.sy.bean.permissions.Menu;
import com.sy.bean.permissions.SaveMenu;
import com.sy.bean.permissions.ShowLinkMenu;
import com.sy.bean.permissions.StatusMenu;
import com.sy.common.crud.IService;

import java.util.List;
import java.util.Map;

public interface MenuService extends IService<Menu> {
    /**
     * 新增菜单
     * @param entity 新增bean
     * @return 行数
     */
    int save(SaveMenu entity);
    /**
     * 删除菜单
     * @param id 父id
     * @return 行数
     */
    int delete(int id);
    /**
     * 上级菜单树
     * @return map
     */
    List<Map> tree();
    /**
     * 根据id修改状态
     * @param menu bean
     * @return 行数
     */
    int editStatus(StatusMenu menu);
    /**
     * 根据菜单id修改是否显示
     * @param menu bean
     * @return 行数
     */
    int editShowLink(ShowLinkMenu menu);

    /**
     * 根据用户id查询权限
     * @param id 用户id
     * @return 权限
     */
    Map  queryMenuByUserId(int id);

}
